namespace Jumpton.SFA.Server.Entity
{
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Data;
    using System.Runtime.Serialization;
    using Jumpton.Persistent;
    
    
    [System.SerializableAttribute()]
    [Map("Message")]
    public class Message : ObjectRow {
        
        public Message() {
        }
        
        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="dataRow">DataTable 中的一行数据</param>
        /// <param name="objectTable">存储当前对象的数据表格</param>
        public Message(System.Data.DataRow dataRow, ObjectTable parent) : 
                base(dataRow, parent) {
        }
        
        /// <summary>
        /// 供反序列化使用的构造函数
        /// </summary>
        /// <param name="info"></param>
        /// <param name="context"></param>
        protected Message(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) : 
                base(info, context) {
        }
        
        [Key("ID",true,true)]
        public decimal ID {
            get {
                return (System.Decimal)GetValue("ID");
            }
            set {
                SetValue("ID", value);
            }
        }

        

        [Field("TOPIC")]
        public string TOPIC {
            get {
                return (System.String)GetValue("TOPIC");
            }
            set {
                SetValue("TOPIC", value);
            }
        }
        
        [Field("CONTENT_LEVEL")]
        public int CONTENTLEVEL {
            get {
                return (System.Int32)GetValue("CONTENTLEVEL");
            }
            set {
                SetValue("CONTENTLEVEL", value);
            }
        }
        
        [Field("CONTENT")]
        public string CONTENT {
            get {
                return (System.String)GetValue("CONTENT");
            }
            set {
                SetValue("CONTENT", value);
            }
        }
        
        [Field("PHOTO_ID")]
        public string PHOTOID {
            get {
                return (System.String)GetValue("PHOTOID");
            }
            set {
                SetValue("PHOTOID", value);
            }
        }
        
        [Field("RECEIVER_COUNT")]
        public int RECEIVERCOUNT {
            get {
                return (System.Int32)GetValue("RECEIVERCOUNT");
            }
            set {
                SetValue("RECEIVERCOUNT", value);
            }
        }
        
        [Field("READ_COUNT")]
        public int READCOUNT {
            get {
                return (System.Int32)GetValue("READCOUNT");
            }
            set {
                SetValue("READCOUNT", value);
            }
        }
        
        [Field("BEGIN_DATE")]
        public decimal BEGINDATE
        {
            get {
                return (System.Decimal)GetValue("BEGINDATE");
            }
            set {
                SetValue("BEGINDATE", value);
            }
        }
        
        [Field("END_DATE")]
        public decimal ENDDATE
        {
            get {
                return (System.Decimal)GetValue("ENDDATE");
            }
            set {
                SetValue("ENDDATE", value);
            }
        }
        
        [Field("ACTIVE")]
        public bool ACTIVE {
            get {
                return (System.Boolean)GetValue("ACTIVE");
            }
            set {
                SetValue("ACTIVE", value);
            }
        }
        
        [Field("DOMAIN_ID")]
        public int DOMAINID {
            get {
                return (System.Int32)GetValue("DOMAINID");
            }
            set {
                SetValue("DOMAINID", value);
            }
        }
        
        [Field("LAST_UPDATER")]
        public string LAST_UPDATER
        {
            get {
                return (System.String)GetValue("LAST_UPDATER");
            }
            set {
                SetValue("LAST_UPDATER", value);
            }
        }
        
        [Field("LAST_UPDATE_TIME")]
        public decimal LAST_UPDATE_TIME {
            get {
                return (System.Decimal)GetValue("LAST_UPDATE_TIME");
            }
            set {
                SetValue("LAST_UPDATE_TIME", value);
            }
        }
        
        [Field("CREATE_TIME")]
        public decimal CREATETIME {
            get {
                return (System.Decimal)GetValue("CREATETIME");
            }
            set {
                SetValue("CREATETIME", value);
            }
        }
    }
}
